package com.ac.api.group.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.base.context.Context;
import com.ac.api.group.entity.AcGroupAction;
import com.ac.api.group.vo.PurviewGrantVo;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * <p>
 * 服务类
 * </p>
 *
 * @author mzl
 * @since 2020-07-09
 */
public interface AcGroupActionService extends IService<AcGroupAction> {

    /**
     * 条件查询
     *
     * @param example
     * @return
     */
    List<AcGroupAction> list(AcGroupAction example);

    /**
     * 分页查询
     *
     * @param example
     * @param page
     * @return
     */
    IPage<AcGroupAction> page(AcGroupAction example, IPage page);

    /**
     * 获取角色的功能列表
     *
     * @param groupid
     * @return
     */
    List<AcGroupAction> findByGroupid(Integer groupid);

    /**
     * 赋予功能
     *
     * @param purviewGrant
     */
    @Transactional
    void grantPurviews(Context context, PurviewGrantVo purviewGrant);

}
